class Person:
    def __init__(self, name, age):
        self._name = name
        self._age = age

    # property装饰器，用来将一个get方法，转换对象为属性
    # 添加property装饰器以后，我们就可以像调用属性一样调用方法
    # 使用property装饰的方法，必须要和属性名一样
    @property
    def name(self):
        '''
            name()用来获取对象的name属性
        '''
        print('getter方法调用了')
        return self._name

    # setter方法的装饰器：@属性名.setter
    @name.setter
    def name(self, name):
        '''
            name()用来修改对象的name属性
        '''
        print('setter方法调用了')
        self._name = name

    @property
    def age(self):
        return self._age

    @age.setter
    def age(self, age):
        self._age = age


p = Person('swk', 18)
p.name = 'zbj'
p.age = 20
print(p.name, p.age)
